package com.shuaiche.yeguan.model;


import com.shuaiche.yeguan.util.StringUtils;

import java.util.List;

/**
 * Created by baoyinbo on 2018/2/24.
 */

public class SCMerchantDetailModel extends BaseResponseModel<SCMerchantDetailModel>{

    private int isScBrand;//是否是帅车品牌店,0否1是
    private Double lat;
    private Double lon;
    private Integer isDelete;
    private Long userId;
    private String merchantName;
    private Integer merchantType;   //1:经销商
    private Long merchantId;        //商户id
    private String legalPerson;     //法人
    private String owner;           //负责人
    private String phone;           //负责人电话
    private Integer province;          //省id
    private Integer city;              //城市id
    private Integer district;          //地区id

    private String provinceName;
    private String cityName;
    private String districtName;
    private String address;         //地址
    // 经纬度
    private double latitude;
    private double longitude;

    private String idNo;            //身份证
    private String license;         //营业执照号
    private String storePic;        //门店图片
    private String licensePic;      //营业执照
    private String idFrontPic;      //身份证正面照片
    private String idBackPic;       //身份证反面照片
    private String merchantLogoPic; //商户logo

    private String accountBank;     //开户银行
    private String accountNo;       //银行账户
    private String accountName;     //户头名称

    private Integer status;          //商户状态 状态 null:未填写, 0:公司注册, 1:审核通过,2:审核不通过,3:冻结， 4:审核中
    private Integer certifiedStatus; //第三方认证状态 0未审核，1未通过，2已通过

    private String merchantAbbreviation;    //商户简称
    private String telephone;               //服务电话
    private String merchantProfile;         //简介

    private String createTime;
    private String inviTime;            //邀请时间

    private boolean select;     //是否选中

    private Boolean isLeader;   //是否是盟主
    private Integer pendingAgree; // 是否待同意邀请进入联盟 1：是（未加入联盟），   0：不是（已经加入联盟）


    private int totalScore;     //积分
    private String authenCode; // TODO: 2019/10/22 2.6新增字段 认证编号
    //经纪人相关
    private Long brokerId;
    private Integer brokerType;     //1:个人  2:企业
    private Integer postageType;    //资费类型 1：年费    2：台次费
    private Integer isPayCost;          //是否缴费  1：是
    private Integer isPayDeposit;   //是否缴纳诚意金 1:是
    private Integer brokerAuditStatus;  //审核状态  -1：无法申请 0：退出； 1：待审核； 2：审核通过；3：审核失败；4：冻结
    private String auditReason;         //审核备注
    private Long inviter;               //邀请人
    private String inviterName;
    private Integer performance;       //销售业绩
    private SCMerchantAttributeResponse attribute;
    private String statusReason;//状态原因v2.7 add 19.11.19

    // 联盟类型 1普通联盟 2会员联盟
    private int unionType;

    private int memberClass;// 会员等级，10普通 20联盟会员 30诚信会员 40严选会员

    public int getMemberClass() {
        return memberClass;
    }

    public void setMemberClass(int memberClass) {
        this.memberClass = memberClass;
    }

    public double getLatitude() {
        return latitude;
    }

    public void setLatitude(double latitude) {
        this.latitude = latitude;
    }

    public double getLongitude() {
        return longitude;
    }

    public void setLongitude(double longitude) {
        this.longitude = longitude;
    }

    public int getUnionType() {
        return unionType;
    }

    public void setUnionType(int unionType) {
        this.unionType = unionType;
    }

    public int getApplyResultCode() {
        return applyResultCode;
    }

    public void setApplyResultCode(int applyResultCode) {
        this.applyResultCode = applyResultCode;
    }

    private int applyResultCode;

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    private String remark;

    public int getIsOffcial() {
        return isOfficial;
    }

    public void setIsOffcial(int isOfficial) {
        this.isOfficial = isOfficial;
    }

    // 是否官方成员 1是0否
    private int isOfficial;

    /**
     * 保证金状态：1待支付，2已支付，3已退还
     **/
    private Integer depositStatus;
    /**
     * 年费状态：1待支付，2已支付，3已退还
     **/
    private Integer costStatus;

    private Integer accountStatus; //商户冻结状态 商户状态1:正常,2冻结

    public Integer getAccountStatus() {
        return accountStatus;
    }

    public void setAccountStatus(Integer accountStatus) {
        this.accountStatus = accountStatus;
    }

    public Integer getDepositStatus() {
        return depositStatus;
    }

    public void setDepositStatus(Integer depositStatus) {
        this.depositStatus = depositStatus;
    }

    public Integer getCostStatus() {
        return costStatus;
    }

    public void setCostStatus(Integer costStatus) {
        this.costStatus = costStatus;
    }


    public int getIsMarginMerchant() {
        return isMarginMerchant;
    }

    public void setIsMarginMerchant(int isMarginMerchant) {
        this.isMarginMerchant = isMarginMerchant;
    }

    private int isMarginMerchant;


    public String getStatusReason() {
        return statusReason;
//        return "hjhsfsf ";
    }

    public void setStatusReason(String statusReason) {
        this.statusReason = statusReason;
    }

    /**
     * 如果 scUnions 为空  则未加入联盟
     */
    private List<SCUnionModel> scUnions;    //联盟id




    public int getIsScBrand() {
        return isScBrand;
    }

    public void setIsScBrand(int isScBrand) {
        this.isScBrand = isScBrand;
    }

    public Double getLat() {
        return lat;
    }

    public void setLat(Double lat) {
        this.lat = lat;
    }

    public Double getLon() {
        return lon;
    }

    public void setLon(Double lon) {
        this.lon = lon;
    }

    public String getAuthenCode() {
        return authenCode;
    }

    public void setAuthenCode(String authenCode) {
        this.authenCode = authenCode;
    }

    public List<SCUnionModel> getScUnions() {
        return scUnions;
    }

    public void setScUnions(List<SCUnionModel> scUnions) {
        this.scUnions = scUnions;
    }

    public SCMerchantAttributeResponse getAttribute() {
        return attribute;
    }

    public void setAttribute(SCMerchantAttributeResponse attribute) {
        this.attribute = attribute;
    }

    public Integer getPerformance() {
        return performance;
    }

    public void setPerformance(Integer performance) {
        this.performance = performance;
    }



    public boolean isSelect() {
        return select;
    }

    public void setSelect(boolean select) {
        this.select = select;
    }

    public Integer getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 获取企业全称
     * @return
     */
    public String getMerchantFullName() {
        return merchantName;
    }

    public String getMerchantName() {
        if (StringUtils.isEmpty(merchantAbbreviation) ) {
            return merchantName;
        } else {
            return merchantAbbreviation;
        }
    }

    public void setMerchantName(String merchantName) {
        this.merchantName = merchantName;
    }

    public Integer getMerchantType() {
        return merchantType;
    }

    public void setMerchantType(Integer merchantType) {
        this.merchantType = merchantType;
    }

    public Long getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(Long merchantId) {
        this.merchantId = merchantId;
    }

    public String getOwner() {
        return owner;
    }

    public void setOwner(String owner) {
        this.owner = owner;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public Integer getProvince() {
        return province;
    }

    public void setProvince(Integer province) {
        this.province = province;
    }

    public Integer getCity() {
        return city;
    }

    public void setCity(Integer city) {
        this.city = city;
    }

    public Integer getDistrict() {
        return district;
    }

    public void setDistrict(Integer district) {
        this.district = district;
    }

    public String getProvinceName() {
        return provinceName;
    }

    public void setProvinceName(String provinceName) {
        this.provinceName = provinceName;
    }

    public String getCityName() {
        return cityName;
    }

    public void setCityName(String cityName) {
        this.cityName = cityName;
    }

    public String getDistrictName() {
        return districtName;
    }

    public void setDistrictName(String districtName) {
        this.districtName = districtName;
    }

    public String getAddress() {
        if (StringUtils.isEmpty(address) || address.equals("null")) {
            return "";
        } else {
            return address;
        }
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getLicense() {
        return license;
    }

    public void setLicense(String license) {
        this.license = license;
    }

    public String getStorePic() {
        return storePic;
    }

    public void setStorePic(String storePic) {
        this.storePic = storePic;
    }

    public String getLicensePic() {
        return licensePic;
    }

    public void setLicensePic(String licensePic) {
        this.licensePic = licensePic;
    }

    public String getIdFrontPic() {
        return idFrontPic;
    }

    public void setIdFrontPic(String idFrontPic) {
        this.idFrontPic = idFrontPic;
    }

    public String getIdBackPic() {
        return idBackPic;
    }

    public void setIdBackPic(String idBackPic) {
        this.idBackPic = idBackPic;
    }

    public String getMerchantLogoPic() {
        return merchantLogoPic;
    }

    public void setMerchantLogoPic(String merchantLogoPic) {
        this.merchantLogoPic = merchantLogoPic;
    }

    public String getAccountBank() {
        return accountBank;
    }

    public void setAccountBank(String accountBank) {
        this.accountBank = accountBank;
    }

    public String getAccountNo() {
        return accountNo;
    }

    public void setAccountNo(String accountNo) {
        this.accountNo = accountNo;
    }

    public String getAccountName() {
        return accountName;
    }

    public void setAccountName(String accountName) {
        this.accountName = accountName;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getMerchantAbbreviation() {
        return merchantAbbreviation;
    }

    public void setMerchantAbbreviation(String merchantAbbreviation) {
        this.merchantAbbreviation = merchantAbbreviation;
    }

    public String getTelephone() {
        return telephone;
    }

    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }

    public String getMerchantProfile() {
        return merchantProfile;
    }

    public void setMerchantProfile(String merchantProfile) {
        this.merchantProfile = merchantProfile;
    }

    public Integer getPendingAgree() {
        return pendingAgree;
    }

    public void setPendingAgree(Integer pendingAgree) {
        this.pendingAgree = pendingAgree;
    }

    public Boolean getLeader() {
        return isLeader;
    }

    public void setLeader(Boolean leader) {
        isLeader = leader;
    }


    public String getDetailAddress() {
        return StringUtils.addString(provinceName, cityName , districtName , address);
    }


    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public Integer getCertifiedStatus() {
        return certifiedStatus;
    }

    public void setCertifiedStatus(Integer certifiedStatus) {
        this.certifiedStatus = certifiedStatus;
    }

    public String getLegalPerson() {
        return legalPerson;
    }

    public void setLegalPerson(String legalPerson) {
        this.legalPerson = legalPerson;
    }

    public String getInviTime() {
        return inviTime;
    }

    public void setInviTime(String inviTime) {
        this.inviTime = inviTime;
    }

    public String getIdNo() {
        return idNo;
    }

    public void setIdNo(String idNo) {
        this.idNo = idNo;
    }

    public Long getBrokerId() {
        return brokerId;
    }

    public void setBrokerId(Long brokerId) {
        this.brokerId = brokerId;
    }

    public Integer getBrokerType() {
        return brokerType;
    }

    public void setBrokerType(Integer brokerType) {
        this.brokerType = brokerType;
    }

    public Integer getIsPayCost() {
        return isPayCost;
    }

    public void setIsPayCost(Integer isPayCost) {
        this.isPayCost = isPayCost;
    }

    public Integer getIsPayDeposit() {
        return isPayDeposit;
    }

    public void setIsPayDeposit(Integer isPayDeposit) {
        this.isPayDeposit = isPayDeposit;
    }

    public Integer getBrokerAuditStatus() {
        return brokerAuditStatus;
    }

    public void setBrokerAuditStatus(Integer brokerAuditStatus) {
        this.brokerAuditStatus = brokerAuditStatus;
    }

    public String getAuditReason() {
        return auditReason;
    }

    public void setAuditReason(String auditReason) {
        this.auditReason = auditReason;
    }

    public Long getInviter() {
        return inviter;
    }

    public void setInviter(Long inviter) {
        this.inviter = inviter;
    }

    public String getInviterName() {
        return inviterName;
    }

    public void setInviterName(String inviterName) {
        this.inviterName = inviterName;
    }

    public Integer getPostageType() {
        return postageType;
    }

    public void setPostageType(Integer postageType) {
        this.postageType = postageType;
    }




    public int getTotalScore() {
        return totalScore;
    }

    public void setTotalScore(int totalScore) {
        this.totalScore = totalScore;
    }
}
